﻿using System;
using System.ComponentModel.DataAnnotations;
using Icms.Resources;
using Omu.Awesome.Mvc;

namespace Icms.WebUI.Dto
{
    public class CaseSearchInput
    {
        [UIHint("AjaxDropdown")]
        [AjaxDropdown(Controller = "CourtAjaxDropdown")]
        [Display(Name = "Judecatoria")]
        public Guid? CourtId { get; set; }

        [Display(Name ="Tipul dosarului" )]
        [UIHint("AjaxDropdown")]
        [AjaxDropdown(Controller = "CaseKindAjaxDropdown")]
        public Guid? TypeId { get; set; }

        [UIHint("AjaxDropdown")]
        [AjaxDropdown(Controller = "ParameterCaseKindAjaxDropdown", ParentId = "TypeId")]
        [AwesomeParameters("{code:'TypeExam', reqCourt: true}")]
        [Display(Name = "Tipul examinarii")]
        public Guid? TypeExamId { get; set; }

        [Display(Name="Indicile dosarului")]
        [UIHint("AjaxDropdown")]
        [AjaxDropdown(Controller = "ParameterAjaxDropdown", ParentId = "TypeExamId")]
        public Guid? IndexId { get; set; }

        [UIHint("AjaxDropdown")]
        [AwesomeParameters("{code:'Statuses'}")]
        [AjaxDropdown(Controller = "ParameterByCodeAjaxDropdown")]
        [Display(Name="Statulul dosarului")]
        public Guid? StatusId { get; set; }

        [Display(Name="Numerele dosarului")]
        public string Number { get; set; }

        [Display(Name= "Referinta dosarului")]
        public string ReferenceNumber { get; set; }

        [UIHint("AjaxDropdown")]
        [AwesomeParameters("{code:'typeofparty', reqCourt: true}")]
        [AjaxDropdown(Controller = "ParameterCaseKindAjaxDropdown", ParentId = "TypeId")]
        [Display(Name="Tip participant")]
        public Guid? PartyTypeId { get; set; }

        [Display(Name="Nume")]
        public string LastName { get; set; }

        [Display(Name="Prenume")]
        public string FirstName { get; set; }

        [UIHint("AjaxDropdown")]
        [AjaxDropdown(Controller = "UserAjaxDropdown")]
        [Display(ResourceType = typeof(Mui), Name = "Judge")]
        public Guid? JudgeId { get; set; }

        public DateTime? RegistrationFrom { get; set; }
        public DateTime? RegistrationTo { get; set; }
       
    }
}
